home *** CD-ROM | disk | FTP | other *** search
/ Software of the Month Club 2000 October / Software of the Month - Ultimate Collection Shareware 277.iso / pc / PROGRAMS / UTILITY / WINLINUX / DATA1.CAB / programs_-_include / ASM-SPAR.{_6 / PBM.H < prev    next >
C/C++ Source or Header  |  1999-09-17  |  1KB  |  57 lines

  1. /* $Id: pbm.h,v 1.1 1998/09/22 05:54:44 jj Exp $
  2.  * pbm.h: PCI bus module pseudo driver software state
  3.  *        Adopted from sparc64 by V. Roganov and G. Raiko
  4.  *
  5.  * Original header:
  6.  * pbm.h: U2P PCI bus module pseudo driver software state.
  7.  *
  8.  * Copyright (C) 1997 David S. Miller (davem@caip.rutgers.edu)
  9.  */
  10.  
  11. #ifndef __SPARC_PBM_H
  12. #define __SPARC_PBM_H
  13.  
  14. #include <linux/pci.h>
  15. #include <asm/oplib.h>
  16.  
  17. struct linux_pbm_info;
  18.  
  19. /* This is what we use to determine what the PROM has assigned so
  20.  * far, so that we can perform assignments for addresses which
  21.  * were not taken care of by OBP.  See psycho.c for details.
  22.  * Per-PBM these are ordered by start address.
  23.  */
  24. struct pci_vma {
  25.     struct pci_vma            *next;
  26.     struct linux_pbm_info        *pbm;
  27.     unsigned int            start;
  28.     unsigned int            end;
  29.     unsigned int            offset;
  30.     unsigned int            _pad;
  31. };
  32.  
  33. struct linux_pbm_info {
  34.     struct pci_vma            *IO_assignments;
  35.     struct pci_vma            *MEM_assignments;
  36.     int                prom_node;
  37.     char                prom_name[64];
  38.     struct linux_prom_pci_ranges    pbm_ranges[PROMREG_MAX];
  39.     int                num_pbm_ranges;
  40.  
  41.     /* Now things for the actual PCI bus probes. */
  42.     unsigned int            pci_first_busno;
  43.     unsigned int            pci_last_busno;
  44.     struct pci_bus            pci_bus;
  45. };
  46.  
  47. /* PCI devices which are not bridges have this placed in their pci_dev
  48.  * sysdata member.  This makes OBP aware PCI device drivers easier to
  49.  * code.
  50.  */
  51. struct pcidev_cookie {
  52.     struct linux_pbm_info        *pbm;
  53.     int                prom_node;
  54. };
  55.  
  56. #endif /* !(__SPARC_PBM_H) */
  57.